c761baebd920b69b125dc8edbbf26433ad5f1bc1,src/aak/as/preProcess/PreProcessor.java,PreProcessor,setLanguage,#String#,73
Before Change
public void setLanguage(String lang){
URLClassLoader ucl = null;
File plugin = new File("preProcess/" + lang + ".jar");
if (!plugin.exists()){
plugin = new File("preProcess/en.jar");
System.out.println("Pre-procssing plugin of [" + lang + "], not found ... trying [en]");
}
ucl = loadLanguage(plugin);
{
ServiceLoader<Normalizer> sl = ServiceLoader.load(Normalizer.class, ucl);
Iterator<Normalizer> it = sl.iterator();
//it = sl.iterator();
if (it.hasNext())
normalizer = it.next();
}
{
ServiceLoader<Segmenter> sl = ServiceLoader.load(Segmenter.class, ucl);
Iterator<Segmenter> it = sl.iterator();
if (it.hasNext())
segmenter = it.next();
}
{
ServiceLoader<SWEliminator> sl = ServiceLoader.load(SWEliminator.class, ucl);
Iterator<SWEliminator> it = sl.iterator();
if (it.hasNext())
sweliminator = it.next();
}
{
ServiceLoader<Stemmer> sl = ServiceLoader.load(Stemmer.class, ucl);
Iterator<Stemmer> it = sl.iterator();
if (it.hasNext())
stemmer = it.next();
}
}
After Change
}
public void setLanguage(String lang){
JarLoader jarLoader =
new JarLoader("preProcess/", "aak/as/preProcess", PreProcessInfo.version);
info = jarLoader.getInfoService(lang, PreProcessInfo.class);
normalizer = jarLoader.getLangService(info, Normalizer.class);
if (normalizer == null) normalizer = new DefNormalizer();
segmenter = jarLoader.getLangService(info,Segmenter.class);
if (segmenter == null) segmenter = new DefSegmenter();
sweliminator = jarLoader.getLangService(info, SWEliminator.class);
if (sweliminator == null) sweliminator = new DefSWEliminator();
stemmer = jarLoader.getLangService(info, Stemmer.class);
if (stemmer == null) stemmer = new DefStemmer();
}